package cn.iocoder.yudao.module.measure.dal.dataobject.warning;

import com.baomidou.mybatisplus.annotation.*;
import lombok.*;
import lombok.experimental.Accessors;
import java.time.LocalDateTime;
import static com.baomidou.mybatisplus.annotation.SqlCondition.EQUAL;
import static com.baomidou.mybatisplus.annotation.SqlCondition.LIKE;

/**
 * <p>
 * 实体类
 * 设备报警记录表
 * </p>
 *
 * @author zhengbzh
 * @date 2025-06-04 11:02:15
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@ToString(callSuper = true)
@Accessors(chain = true)
@Builder
@TableName("business_device_warn_record")
public class BusinessDeviceWarnRecord {
    private static final long serialVersionUID = 1L;




    @TableId(value = "id", type = IdType.INPUT)
    protected Long id;

    @TableField(value = "created_time", fill = FieldFill.INSERT)
    protected LocalDateTime createdTime;

    @TableField(value = "created_by", fill = FieldFill.INSERT)
    protected Long createdBy;

    @TableField(value = "updated_time", fill = FieldFill.INSERT_UPDATE)
    protected LocalDateTime updatedTime;

    @TableField(value = "updated_by", fill = FieldFill.INSERT_UPDATE)
    protected Long updatedBy;

    /**
     * 测量点id
     */
    @TableField(value = "measure_id", condition = EQUAL)
    private Long measureId;
    /**
     * 报警级别
     */
    @TableField(value = "warning_level", condition = LIKE)
    private String warningLevel;
    /**
     * 告警内容
     */
    @TableField(value = "warning_content", condition = LIKE)
    private String warningContent;
    /**
     * 告警检查类别
     */
    @TableField(value = "warning_check_type", condition = LIKE)
    private String warningCheckType;
    /**
     * 设备数据
     */
    @TableField(value = "device_data", condition = LIKE)
    private String deviceData;

    @TableField(value = "device_data_type", condition = EQUAL)
    private String deviceDataType;

    @TableField(value = "device_time")
    private LocalDateTime deviceTime;

    /**
     * 记录状态
     */
    @TableField(value = "record_status", condition = EQUAL)
    private String recordStatus;

    /**
     * 处理人
     */
    @TableField(value = "deal_person", condition = LIKE)
    private String dealPerson;

    /**
     * 处理明细
     */
    @TableField(value = "deal_detail", condition = LIKE)
    private String dealDetail;

    /**
     * 租户id
     */
    @TableField(exist = false)
    @Deprecated
    private Long tenantId;


}
